home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / livecd.squashfs / usr / lib / python2.4 / site-packages / impacket / uuid.pyc (.txt) < prev   
Python Compiled Bytecode  |  2006-06-30  |  2KB  |  46 lines

  1. # Source Generated with Decompyle++
  2. # File: in.pyc (Python 2.4)
  3.  
  4. import re
  5. from random import randrange
  6. from struct import pack, unpack
  7.  
  8. def generate():
  9.     top = (0x1L << 31) - 1
  10.     return pack('IIII', randrange(top), randrange(top), randrange(top), randrange(top))
  11.  
  12.  
  13. def bin_to_string(uuid):
  14.     (uuid1, uuid2, uuid3) = unpack('<LHH', uuid[:8])
  15.     (uuid4, uuid5, uuid6) = unpack('>HHL', uuid[8:16])
  16.     return '%08X-%04X-%04X-%04X-%04X%08X' % (uuid1, uuid2, uuid3, uuid4, uuid5, uuid6)
  17.  
  18.  
  19. def string_to_bin(uuid):
  20.     matches = re.match('([\\dA-Fa-f]{8})-([\\dA-Fa-f]{4})-([\\dA-Fa-f]{4})-([\\dA-Fa-f]{4})-([\\dA-Fa-f]{4})([\\dA-Fa-f]{8})', uuid)
  21.     (uuid1, uuid2, uuid3, uuid4, uuid5, uuid6) = map((lambda x: long(x, 16)), matches.groups())
  22.     uuid = pack('<LHH', uuid1, uuid2, uuid3)
  23.     uuid += pack('>HHL', uuid4, uuid5, uuid6)
  24.     return uuid
  25.  
  26.  
  27. def stringver_to_bin(s):
  28.     (maj, min) = s.split('.')
  29.     return pack('<H', int(maj)) + pack('<H', int(min))
  30.  
  31.  
  32. def uuidtup_to_bin(tup):
  33.     if len(tup) != 2:
  34.         return None
  35.     
  36.     return string_to_bin(tup[0]) + stringver_to_bin(tup[1])
  37.  
  38.  
  39. def string_to_uuidtup(s):
  40.     g = re.search('([A-Fa-f0-9]{8}-[A-Fa-f0-9]{4}-[A-Fa-f0-9]{4}-[A-Fa-f0-9]{4}-[A-Fa-f0-9]{12}).*?([0-9]{1,5}\\.[0-9]{1,5})', s + ' 1.0')
  41.     if g:
  42.         (u, v) = g.groups()
  43.         return (u, v)
  44.     
  45.  
  46.